/*
 * C.cpp
 *
 *  Created on: 2014-2-12
 *      Author: cjrzh
 */

#include<cstdio>
#include<cstring>
#include<iostream>
#include<cmath>
#include<vector>
#include<map>
#include<set>
#include<stack>
#include<queue>
#include<algorithm>

using namespace std;

const int maxn=100005;
char s[maxn];
int f[maxn];
int main()
{
	int n,k,w,l,r;
	scanf("%d%d%d%s",&n,&k,&w,s+1);
	f[0]=0;
	for(int i=1;i<=n;i++)
		f[i]=f[max(i-k,0)]+s[i]-'0';
	int ans=0;
	for(int i=1;i<=w;i++)
	{
		ans=0;
		scanf("%d%d",&l,&r);
		for(int j=1;j<k;j++)
			ans+=f[r-k+j]-f[max(l-k+j-1,0)];
		ans+=(r-l+1)/k-(f[r]-f[l-1]);
		printf("%d\n",ans);
	}
	return 0;
}
